package com.zmn.oms.model.entity.callinfo;

import com.zmn.oms.common.dto.OmsBaseOperator;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.ToString;

import javax.validation.constraints.NotNull;
import java.io.Serializable;

/**
 * 类描述：呼叫信息录入
 *
 * @author yule
 * @date 2019/07/01 15:33
 */
@Data
@ToString(callSuper = true)
public class CallInfo implements Serializable {

    /**
     * 来源
     *
     * @see com.zmn.ccc.common.enums.SourceTypeEnum#REN_GONG_LU_DAN
     */
    @ApiModelProperty("线索信息来源: 1-易聊推送，2-cms推送，3-58同城，4-快益修，5-钉钉消息，6-人工录单，7-渠道推送")
    @NotNull(message = "请传入线索信息来源")
    private Integer sourceType;

    /**
     * 必填 渠道id
     */
    private Integer channelId;

    /**
     * 必填 渠道名称
     */
    private String channelName;

    /**
     * 必填 用户电话
     */
    private String userPhone;

    /**
     * 用户电话4位
     */
    private String userPhoneEnd4;

    /**
     * 用户备用电话
     */
    private String userPhone2;

    /**
     * 重复订单 1:未重复 2:重复 必填
     */
    private Integer repetitive = 1;

    /**
     * 用户姓名
     */
    private String userName;

    /**
     * 服务分类id
     */
    private Integer servCategId;

    /**
     * 服务分类
     */
    private String servCategName;

    /**
     * 产品id
     * isNullAble:0
     */
    private Integer productId;

    /**
     * 产品Name
     * isNullAble:0
     */
    private String productName;

    /**
     * 前端产品id
     * isNullAble:0
     */
    private Integer showProductId;

    /**
     * 前端产品名称
     * isNullAble:0
     */
    private String showProductName;

    /**
     * 省 id
     */
    private Integer provinceId;

    /**
     * 省 名称
     */
    private String provinceName;

    /**
     * 市 id
     */
    private Integer cityId;

    /**
     * 市 名称
     */
    private String cityName;

    /**
     * 区 id
     */
    private Integer countyId;

    /**
     * 区 名称
     */
    private String countyName;

    /**
     * 街道
     * isNullAble:0
     */
    private String street;

    /**
     * 客户地址具体门牌号
     * isNullAble:0,defaultVal:
     */
    private String address;

    /**
     * 经度
     * isNullAble:1
     */
    private Double longitude;

    /**
     * 纬度
     * isNullAble:1
     */
    private Double latitude;

    /**
     * 订单客户备注
     * isNullAble:0,defaultVal:
     */
    private String remark;

    /**
     * 自动外呼 1自动外呼，2手动外呼
     */
    private Integer automatic;

    /**
     * 创建人
     * isNullAble:1,defaultVal:
     */
    private String creater;

    /**
     * 签名(对应 openapi的 secret)
     * 测试环境 867D0B5FBEBFEF9818DF9F39E87EAA9E
     * 正式环境 0D88803ACC26F6E838EFA811095D6350
     */
    private String sign;

}
